﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.Serialization;

namespace Galaxy.ModuleInterface.Exceptions
{
    /// <summary>
    /// Исключение Галактики
    /// </summary>
    [Serializable]
    public class GalaxyException : ApplicationException
    {
        /// <summary>
        /// Исключение Галактики
        /// </summary>
        public GalaxyException() { }

        /// <summary>
        /// Исключение Галактики
        /// </summary>
        /// <param name="Message">Сообщение</param>
        public GalaxyException(string Message) : base(Message) { }

        /// <summary>
        /// Исключение Галактики
        /// </summary>
        /// <param name="Message"Сообщие</param>
        /// <param name="InnerException">Причина ошибки</param>
        public GalaxyException(string Message, Exception InnerException) 
            : base(Message, InnerException) { }

        protected GalaxyException(SerializationInfo Info, StreamingContext Context) 
            : base(Info, Context) { }
    }

    /// <summary>
    /// Исключение Галактики
    /// </summary>
    [Serializable]
    public class CopyOfGalaxyException : ApplicationException
    {
        /// <summary>
        /// Исключение Галактики
        /// </summary>
        public CopyOfGalaxyException() { }

        /// <summary>
        /// Исключение Галактики
        /// </summary>
        /// <param name="Message">Сообщение</param>
        public CopyOfGalaxyException(string Message) : base(Message) { }

        /// <summary>
        /// Исключение Галактики
        /// </summary>
        /// <param name="Message"Сообщие</param>
        /// <param name="InnerException">Причина ошибки</param>
        public CopyOfGalaxyException(string Message, Exception InnerException)
            : base(Message, InnerException) { }

        protected CopyOfGalaxyException(SerializationInfo Info, StreamingContext Context)
            : base(Info, Context) { }
    }
}
